자료구조 알고리즘(C) 도수 정렬(Counting sort) 도수 정렬 특징 범위 조건이 있는 경우에 한해서 굉장히 빠름 도수 정렬 단계 a를 스캔하며 해당 값을 찾으면 f의 인덱스에 위치한 값에 1씩 증가시킴 코드 배열 a의 값의 범위가 0 이상 max 이하일때(그림에서는 max를 10이라 가정), 배열 f를 누적된 값이 몇개 있는지 나타내게 만들어준다. 그러면 배열 a의 값들이 몇 번째에 위치하는지 알수 있다. 코드 3. 목적 배열 만들기 이미 배... 자료구조 알고리즘(C)자료구조 알고리즘(C) 셸 정렬(Shell Sort) 단순 삽입 정렬의 장점은 살리고 단점은 보완하여 좀 더 빠르게 정렬하는 알고리즘 삽입 정렬의 장점 정렬을 마쳤거나 정렬을 마친 상태에 가까우면 정렬 속도가 매우 빠름(이동 회수 줄임) 삽입 정렬의 단점 삽입 정렬은 입력되는 초기 리스트가 "거의 정렬"되어 있을 경우 효율적 삽입 정렬은 한 번에 한 요소의 위치만 결정되기 때문에 비효율적 셸 정렬의 보완책 삽입할 위치가 멀리 떨어져 있으면 이동... 자료구조 알고리즘(C)자료구조 알고리즘(C)
도수 정렬(Counting sort) 도수 정렬 특징 범위 조건이 있는 경우에 한해서 굉장히 빠름 도수 정렬 단계 a를 스캔하며 해당 값을 찾으면 f의 인덱스에 위치한 값에 1씩 증가시킴 코드 배열 a의 값의 범위가 0 이상 max 이하일때(그림에서는 max를 10이라 가정), 배열 f를 누적된 값이 몇개 있는지 나타내게 만들어준다. 그러면 배열 a의 값들이 몇 번째에 위치하는지 알수 있다. 코드 3. 목적 배열 만들기 이미 배... 자료구조 알고리즘(C)자료구조 알고리즘(C) 셸 정렬(Shell Sort) 단순 삽입 정렬의 장점은 살리고 단점은 보완하여 좀 더 빠르게 정렬하는 알고리즘 삽입 정렬의 장점 정렬을 마쳤거나 정렬을 마친 상태에 가까우면 정렬 속도가 매우 빠름(이동 회수 줄임) 삽입 정렬의 단점 삽입 정렬은 입력되는 초기 리스트가 "거의 정렬"되어 있을 경우 효율적 삽입 정렬은 한 번에 한 요소의 위치만 결정되기 때문에 비효율적 셸 정렬의 보완책 삽입할 위치가 멀리 떨어져 있으면 이동... 자료구조 알고리즘(C)자료구조 알고리즘(C)